﻿using System.Collections.Generic;
using Myotragus.Data.Domain;

namespace Myotragus.Data.Repositories
{
	public interface IWriteRepository<TEntity> : IRepository<TEntity>
		where TEntity : IEntity
	{
		void Save(IEnumerable<TEntity> entities);

		void Save(params TEntity[] entities);

		void Delete(IEnumerable<TEntity> entities);

		void Delete(params TEntity[] entities);
	}

	public interface IWriteRepository<TEntity, TId> : IWriteRepository<TEntity>
		where TEntity : IEntity
	{
		void Delete(IEnumerable<TId> ids);

		void Delete(params TId[] ids);
	}
}